package com.weds.edpf.core.mapper;

import com.weds.core.annotation.MyBatisDao;
import com.weds.edpf.core.entity.DevEntity;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @Author zcz
 * @Description 设备与场所关联
 * @Date 2020-06-11
 */
@MyBatisDao
public interface DevMapper {
    /**
     * 删除
     * @param xh
     * @return
     */
    int deleteByPrimaryKey(Integer xh);

    /**
     * 新增
     * @param record
     * @return
     */
    int insert(DevEntity record);

    /**
     * 批量新增
     * @param list
     * @return
     */
    int insertBatch(@Param("list") List<DevEntity> list);

    /**
     * 条件新增
     * @param record
     * @return
     */
    int insertSelective(DevEntity record);

    /**
     * 主键查询
     * @param xh
     * @return
     */
    DevEntity selectByPrimaryKey(Integer xh);

    /**
     * 条件更新
     * @param record
     * @return
     */
    int updateByPrimaryKeySelective(DevEntity record);

    /**
     * 更新
     * @param record
     * @return
     */
    int updateByPrimaryKey(DevEntity record);

    /**
     * 查询列表
     * @param record
     * @return
     */
    List<DevEntity> selectListByEntity(DevEntity record);

    /**
     *
     * @param list
     * @return
     */
    int deleteBatchByKeys(@Param("list") List<DevEntity> list);

    /**
     * 判断场所下设备
     * @param depSerial
     * @return
     */
    int countDepDev(Integer depSerial);

    /**
     * 根据类型和序号删除
     * @param lx
     * @param devSerial
     * @return
     */
    int deleteByDevSerialAndLx(@Param("lx")String lx,@Param("devSerial")String devSerial);

    /**
     * 根据设备编号和场所编号查询
     * @param devSerial
     * @param depSerial
     * @return
     */
    DevEntity selectByDevSerialAndDepSerial(@Param("devSerial")String devSerial,@Param("depSerial")String depSerial);
    /**
     * 根据设备编号查询
     * @param devSerial
     * @return
     */
    DevEntity selectByDevSerial(@Param("devSerial")String devSerial);


}